/*
 * verResultados.java
 *
 * Created on 03-jun-2011, 19:40:38
 */

package interfaces;

import Controlador.Controlador;
import GestorPruebas.*;
import GestorUsuarios.IDException;
import GestorUsuarios.Usuario;
import clinica.*;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.lang.reflect.Field;
import java.security.NoSuchAlgorithmException;
import java.sql.SQLException;
import java.text.ParseException;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.jdesktop.application.Action;


/**
 *
 * @author antonio
 */
public class verResultados extends javax.swing.JPanel {

    ClinicaView app;
    Interfaces _anterior;
    /** Creates new form verResultados */
    public verResultados( ClinicaView a) {
        initComponents();
        app = a;
    }

    public void rellenaDatos ( Prueba p , Interfaces ant ) throws SQLException, IOException, ClassNotFoundException, NoSuchAlgorithmException {
        _anterior = ant;

        //Si la prueba es de radiografia
        if (p.getTipo() == TipoPrueba.Radiografia) {
            try {
                app.abrirVerResultadosRadiografia(p, ant);
            } catch (ParseException ex) {
                Logger.getLogger(verResultados.class.getName()).log(Level.SEVERE, null, ex);
            }
            
        }
        else if (p != null)
        { //para el resto de pruebas
        String plantilla = null ;
        String text = null;

        //Obtenemos el usuario de la prueba
        Usuario u = Usuario.get(p.getIdPaciente());

        //Vemos la plantilla a usar
        if ( p.getTipo() == TipoPrueba.BioquimicaGeneral ){
            plantilla = "/src/plantillas/bioquimicaGeneral.html";
        }
        else if ( p.getTipo() == TipoPrueba.HematologiaGeneral ){
             plantilla = "/src/plantillas/hematologiaGeneral.html";
        }
        else if ( p.getTipo() == TipoPrueba.Hemostasia ){
             plantilla = "/src/plantillas/hemostasia.html";
        }
        else if ( p.getTipo() == TipoPrueba.Hormonas ){
             plantilla = "/src/plantillas/hormonas.html";
        }
        else if ( p.getTipo() == TipoPrueba.MarcadoresTumorales ){
             plantilla = "/src/plantillas/marcadoresTumorales.html";
        }
        else if ( p.getTipo() == TipoPrueba.Urianalisis ) {
             plantilla = "/src/plantillas/urianalisis.html";
        }

        //Leemos la plantilla
        text = readFile(plantilla);
        Field campos[] = p.getClass().getDeclaredFields();
        for (Field f: campos) {
            ValoresPrueba v = null;
            try {
                v = Controlador.obtenerValoresPrueba(f.getName());
            } catch (IDException ex) {
                    Logger.getLogger(verResultados.class.getName()).log(Level.SEVERE, null, ex);
            }
            if (v!=null) {
                text = text.replace("%UNI"+f.getName()+"%", v.getUnidad());
                text = text.replace("%MIN"+f.getName()+"%", v.getMinimo().toString());
                text = text.replace("%MAX"+f.getName()+"%", v.getMaximo().toString());

                if ( p.getTipo() == TipoPrueba.BioquimicaGeneral ){
                    text = reemplazoValorBioquimicaGeneral(text, f.getName(), (BioquimicaGeneral)p, v);
                }
                else if ( p.getTipo() == TipoPrueba.HematologiaGeneral ){
                    text = reemplazoValorHematologiaGeneral(text, f.getName(), (HematologiaGeneral)p, v);
                }
                else if ( p.getTipo() == TipoPrueba.Hemostasia ){
                    text = reemplazoValorHemostasia(text, f.getName(), (Hemostasia)p, v);
                }
                else if ( p.getTipo() == TipoPrueba.Hormonas ){
                    text = reemplazoValorHormonas(text, f.getName(), (Hormonas)p, v);
                }
                else if ( p.getTipo() == TipoPrueba.MarcadoresTumorales ){
                    text = reemplazoValorMarcadoresTumorales(text, f.getName(), (MarcadoresTumorales)p, v);
                }
                else if ( p.getTipo() == TipoPrueba.Urianalisis )
                    text = reemplazoValorUrianalisis(text, f.getName(), (Urianalisis)p, v);

            }//end if v
        }//end for

        //Reemplazamos el nombre
        text = text.replace("__nombre__", u.getNombre() + " " + u.getApellidos());

        //La mostramos
        texto.setContentType("text/html");
        texto.setText(text);

        }
        
    }

    void limpiaDatos () {

    }

    String readFile ( String path ){
        String plantilla = "";
        // aqui obtengo el camino absoluto de mi directorio actual
        String directorio = System.getProperty("user.dir");

        // Lectura del fichero
        try {
            BufferedReader br = new BufferedReader(new FileReader(directorio + path));
            String linea;
            while((linea=br.readLine())!=null)
                plantilla += linea;
        }
        catch(Exception e){
            System.out.println(e.getMessage());
        }

        return plantilla;
    }


    String reemplazoValorBioquimicaGeneral ( String text , String valor , BioquimicaGeneral p , ValoresPrueba v ) {
        String colorFail = "<font color=\"red\">";

        if ( valor.equals("_acidoUrico")) {
            if ( p.getAcidoUrico() > v.getMinimo() && p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_acidoUrico%", p.getAcidoUrico().toString());
            else
                text = text.replace("%_acidoUrico%", colorFail +p.getAcidoUrico().toString() + "</font>");
        }
        else if(valor.equals("_creatinina")) {
            if (p.getCreatinina() > v.getMinimo() &&p.getCreatinina() < v.getMaximo() )
                text = text.replace("%_creatinina%",p.getCreatinina().toString());
            else
                text = text.replace("%_creatinina%", colorFail +p.getCreatinina().toString() + "</font>");
        }
        else if(valor.equals("_urea")) {
            if (p.getAcidoUrico() > v.getMinimo() &&p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_urea%",p.getUrea().toString());
            else
                text = text.replace("%_urea%", colorFail +p.getUrea().toString() + "</font>");
        }
        else  if (valor.equals("_glucosa")) {
            if (p.getAcidoUrico() > v.getMinimo() &&p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_glucosa%",p.getGlucosa().toString());
            else
                text = text.replace("%_glucosa%", colorFail +p.getGlucosa().toString() + "</font>");
        }
        else if(valor.equals("_colesterol")) {
            if (p.getAcidoUrico() > v.getMinimo() &&p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_colesterol%",p.getColesterol().toString());
            else
                text = text.replace("%_colesterol%", colorFail +p.getColesterol().toString() + "</font>");
        }
        else if ( valor.equals("_colesterolHDL")) {
            if (p.getAcidoUrico() > v.getMinimo() &&p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_colesterolHDL%",p.getColesterolHDL().toString());
            else
                text = text.replace("%_colesterolHDL%", colorFail +p.getColesterolHDL().toString() + "</font>");
        }
        else if ( valor.equals("_colesterolLDL")) {
            if (p.getAcidoUrico() > v.getMinimo() &&p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_colesterolLDL%",p.getcolesterolLDL().toString());
            else
                text = text.replace("%_colesterolLDL%", colorFail +p.getcolesterolLDL().toString() + "</font>");
        }
        else if ( valor.equals("_trigliceridos")) {
            if (p.getAcidoUrico() > v.getMinimo() &&p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_trigliceridos%",p.getTrigliceridos().toString());
            else
                text = text.replace("%_trigliceridos%", colorFail +p.getTrigliceridos().toString() + "</font>");
        }
        else if ( valor.equals("_bilirrubinaTotal")) {
            if (p.getAcidoUrico() > v.getMinimo() &&p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_bilirrubinaTotal%",p.getBilirrubinaTotal().toString());
            else
                text = text.replace("%_bilirrubinaTotal%", colorFail +p.getBilirrubinaTotal().toString() + "</font>");
        }
        else if ( valor.equals("_gammaGlutamiltransferasa")) {
            if (p.getAcidoUrico() > v.getMinimo() &&p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_gammaGlutamiltransferasa%",p.getGammaGlutamiltransferasa().toString());
            else
                text = text.replace("%_gammaGlutamiltransferasa%", colorFail +p.getGammaGlutamiltransferasa().toString() + "</font>");
        }
        else if ( valor.equals("_aspartatoTransaminasa")) {
            if (p.getAcidoUrico() > v.getMinimo() &&p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_aspartatoTransaminasa%",p.getAspartatoTransaminasa().toString());
            else
                text = text.replace("%_aspartatoTransaminasa%", colorFail +p.getAspartatoTransaminasa().toString() + "</font>");
        }
        else if ( valor.equals("_alaminaTransaminasa")) {
            if (p.getAcidoUrico() > v.getMinimo() &&p.getAcidoUrico() < v.getMaximo() )
                text = text.replace("%_alaminaTransaminasa%",p.getAlaminaTransaminasa().toString());
            else
                text = text.replace("%_alaminaTransaminasa%", colorFail +p.getAlaminaTransaminasa().toString() + "</font>");
        }

        return text;
    }

    String reemplazoValorHematologiaGeneral ( String text , String valor , HematologiaGeneral p , ValoresPrueba v ) {
        String colorFail = "<font color=\"red\">";

        if ( valor.equals("_basofilosPorc")) {
            if ( p.getBasofilosPorc() > v.getMinimo() && p.getBasofilosPorc() < v.getMaximo() )
                text = text.replace("%_basofilosPorc%", p.getBasofilosPorc().toString());
            else
                text = text.replace("%_basofilosPorc%", colorFail +p.getBasofilosPorc().toString() + "</font>");
        }
        else if(valor.equals("_concentracionHemoCorp")) {
            if (p.getConcentracionHemoCorp() > v.getMinimo() && p.getConcentracionHemoCorp() < v.getMaximo() )
                text = text.replace("%_concentracionHemoCorp%",p.getConcentracionHemoCorp().toString());
            else
                text = text.replace("%_concentracionHemoCorp%", colorFail +p.getConcentracionHemoCorp().toString() + "</font>");
        }
        else if(valor.equals("_dispersionHematies")) {
            if (p.getDispersionHematies() > v.getMinimo() && p.getDispersionHematies() < v.getMaximo() )
                text = text.replace("%_dispersionHematies%",p.getDispersionHematies().toString());
            else
                text = text.replace("%_dispersionHematies%", colorFail +p.getDispersionHematies().toString() + "</font>");
        }
        else  if (valor.equals("_eosinofilos")) {
            if (p.getEosinofilos() > v.getMinimo() && p.getEosinofilos() < v.getMaximo() )
                text = text.replace("%_eosinofilos%",p.getEosinofilos().toString());
            else
                text = text.replace("%_eosinofilos%", colorFail +p.getEosinofilos().toString() + "</font>");
        }
        else if(valor.equals("_hematies")) {
            if (p.getHematies() > v.getMinimo() && p.getHematies() < v.getMaximo() )
                text = text.replace("%_hematies%",p.getHematies().toString());
            else
                text = text.replace("%_hematies%", colorFail +p.getHematies().toString() + "</font>");
        }
        else if ( valor.equals("_hematocritos")) {
            if (p.getHematocritos() > v.getMinimo() && p.getHematocritos() < v.getMaximo() )
                text = text.replace("%_hematocritos%",p.getHematocritos().toString());
            else
                text = text.replace("%_hematocritos%", colorFail +p.getHematocritos().toString() + "</font>");
        }
        else if ( valor.equals("_hemoglobinaCorpMedia")) {
            if (p.getHemoglobinaCorpMedia() > v.getMinimo() && p.getHemoglobinaCorpMedia() < v.getMaximo() )
                text = text.replace("%_hemoglobinaCorpMedia%",p.getHemoglobinaCorpMedia().toString());
            else
                text = text.replace("%_hemoglobinaCorpMedia%", colorFail +p.getHemoglobinaCorpMedia().toString() + "</font>");
        }
        else if ( valor.equals("_hemoglobina")) {
            if (p.getHemoglobina() > v.getMinimo() && p.getHemoglobina() < v.getMaximo() )
                text = text.replace("%_hemoglobina%",p.getHemoglobina().toString());
            else
                text = text.replace("%_hemoglobina%", colorFail +p.getHemoglobina().toString() + "</font>");
        }
        else if ( valor.equals("_leucocitos")) {
            if (p.getLeucocitos() > v.getMinimo() && p.getLeucocitos() < v.getMaximo() )
                text = text.replace("%_leucocitos%",p.getLeucocitos().toString());
            else
                text = text.replace("%_leucocitos%", colorFail +p.getLeucocitos().toString() + "</font>");
        }
        else if ( valor.equals("_linfocitos")) {
            if (p.getLinfocitos() > v.getMinimo() && p.getLinfocitos() < v.getMaximo() )
                text = text.replace("%_linfocitos%",p.getLinfocitos().toString());
            else
                text = text.replace("%_linfocitos%", colorFail +p.getLinfocitos().toString() + "</font>");
        }
        else if ( valor.equals("_monocitosPorc")) {
            if (p.getMonocitosPorc() > v.getMinimo() && p.getMonocitosPorc() < v.getMaximo() )
                text = text.replace("%_monocitosPorc%",p.getMonocitosPorc().toString());
            else
                text = text.replace("%_monocitosPorc%", colorFail +p.getMonocitosPorc().toString() + "</font>");
        }
        else if ( valor.equals("_neutrofilos")) {
            if (p.getNeutrofilos() > v.getMinimo() && p.getNeutrofilos() < v.getMaximo() )
                text = text.replace("%_neutrofilos%",p.getNeutrofilos().toString());
            else
                text = text.replace("%_neutrofilos%", colorFail +p.getNeutrofilos().toString() + "</font>");
        }
        else if ( valor.equals("_neutrofilosPorc")) {
            if (p.getNeutrofilosPorc() > v.getMinimo() && p.getNeutrofilosPorc() < v.getMaximo() )
                text = text.replace("%_neutrofilosPorc%",p.getNeutrofilosPorc().toString());
            else
                text = text.replace("%_neutrofilosPorc%", colorFail +p.getNeutrofilosPorc().toString() + "</font>");
        }
        else if ( valor.equals("_plaquetas")) {
            if (p.getPlaquetas() > v.getMinimo() && p.getPlaquetas() < v.getMaximo() )
                text = text.replace("%_plaquetas%",p.getPlaquetas().toString());
            else
                text = text.replace("%_plaquetas%", colorFail +p.getPlaquetas().toString() + "</font>");
        }
        else if ( valor.equals("_volumenCorpMedio")) {
            if (p.getVolumenCorpMedio() > v.getMinimo() && p.getVolumenCorpMedio() < v.getMaximo() )
                text = text.replace("%_volumenCorpMedio%",p.getVolumenCorpMedio().toString());
            else
                text = text.replace("%_volumenCorpMedio%", colorFail +p.getVolumenCorpMedio().toString() + "</font>");
        }
        else if ( valor.equals("_volumenPlaquetarioMedio")) {
            if (p.getVolumenPlaquetarioMedio() > v.getMinimo() && p.getVolumenPlaquetarioMedio() < v.getMaximo() )
                text = text.replace("%_volumenPlaquetarioMedio%",p.getVolumenPlaquetarioMedio().toString());
            else
                text = text.replace("%_volumenPlaquetarioMedio%", colorFail +p.getVolumenPlaquetarioMedio().toString() + "</font>");
        }
        else if ( valor.equals("_monocitos")) {
            if (p.getMonocitos() > v.getMinimo() && p.getMonocitos() < v.getMaximo() )
                text = text.replace("%_monocitos%",p.getMonocitos().toString());
            else
                text = text.replace("%_monocitos%", colorFail +p.getMonocitos().toString() + "</font>");
        }
        else if ( valor.equals("_eosinofilosPorc")) {
            if (p.getEosinofilosPorc() > v.getMinimo() && p.getEosinofilosPorc() < v.getMaximo() )
                text = text.replace("%_eosinofilosPorc%",p.getEosinofilosPorc().toString());
            else
                text = text.replace("%_eosinofilosPorc%", colorFail +p.getEosinofilosPorc().toString() + "</font>");
        }
        else if ( valor.equals("_basofilos")) {
            if (p.getBasofilos() > v.getMinimo() && p.getBasofilos() < v.getMaximo() )
                text = text.replace("%_basofilos%",p.getBasofilos().toString());
            else
                text = text.replace("%_basofilos%", colorFail +p.getBasofilos().toString() + "</font>");
        }
        else if ( valor.equals("_linfocitosPorc")) {
            if (p.getLinfocitosPorc() > v.getMinimo() && p.getLinfocitosPorc() < v.getMaximo() )
                text = text.replace("%_linfocitosPorc%",p.getLinfocitosPorc().toString());
            else
                text = text.replace("%_linfocitosPorc%", colorFail +p.getLinfocitosPorc().toString() + "</font>");
        }

        return text;
    }
    
    String reemplazoValorHemostasia ( String text , String valor , Hemostasia p , ValoresPrueba v ) {
        String colorFail = "<font color=\"red\">";

        if ( valor.equals("_actividad_protombina")) {
            if ( p.getActividadProtombina() > v.getMinimo() && p.getActividadProtombina() < v.getMaximo() )
                text = text.replace("%_actividad_protombina%", p.getActividadProtombina().toString());
            else
                text = text.replace("%_actividad_protombina%", colorFail +p.getActividadProtombina().toString() + "</font>");
        }
        else if(valor.equals("_actividad_protombina_porcentaje")) {
            if (p.getActividadProtombinaPorcentaje() > v.getMinimo() && p.getActividadProtombinaPorcentaje() < v.getMaximo() )
                text = text.replace("%_actividad_protombina_porcentaje%",p.getActividadProtombinaPorcentaje().toString());
            else
                text = text.replace("%_actividad_protombina_porcentaje%", colorFail +p.getActividadProtombinaPorcentaje().toString() + "</font>");
        }
        else if(valor.equals("_tiempo_tombloplastina_parcial_act")) {
            if (p.getTiempoTombloplastinaParcialAct() > v.getMinimo() &&p.getTiempoTombloplastinaParcialAct() < v.getMaximo() )
                text = text.replace("%_tiempo_tombloplastina_parcial_act%",p.getTiempoTombloplastinaParcialAct().toString());
            else
                text = text.replace("%_tiempo_tombloplastina_parcial_act%", colorFail +p.getTiempoTombloplastinaParcialAct().toString() + "</font>");
        }

        return text;
    }

    String reemplazoValorHormonas ( String text , String valor , Hormonas p , ValoresPrueba v ) {
        String colorFail = "<font color=\"red\">";

        if ( valor.equals("_tirotropina")) {
            if ( p.getTirotropina() > v.getMinimo() && p.getTirotropina() < v.getMaximo() )
                text = text.replace("%_tirotropina%", p.getTirotropina().toString());
            else
                text = text.replace("%_tirotropina%", colorFail +p.getTirotropina().toString() + "</font>");
        }

        return text;
    }

    String reemplazoValorMarcadoresTumorales ( String text , String valor , MarcadoresTumorales p , ValoresPrueba v ) {
        String colorFail = "<font color=\"red\">";

        if ( valor.equals("_PSA")) {
            if ( p.getPSA() > v.getMinimo() && p.getPSA() < v.getMaximo() )
                text = text.replace("%_PSA%", p.getPSA().toString());
            else
                text = text.replace("%_PSA%", colorFail +p.getPSA().toString() + "</font>");
        }

        return text;
    }

    String reemplazoValorUrianalisis ( String text , String valor , Urianalisis p , ValoresPrueba v ) {
        String colorFail = "<font color=\"red\">";

        if ( valor.equals("_sistematico_orina")) {
            if ( p.getOrina() > v.getMinimo() && p.getOrina() < v.getMaximo() )
                text = text.replace("%_sistematico_orina%", p.getOrina().toString());
            else
                text = text.replace("%_sistematico_orina%", colorFail +p.getOrina().toString() + "</font>");
        }

        return text;
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jButton1 = new javax.swing.JButton();
        jPanel1 = new javax.swing.JPanel();
        scroll = new javax.swing.JScrollPane();
        texto = new javax.swing.JEditorPane();

        setMinimumSize(new java.awt.Dimension(780, 472));
        setPreferredSize(new java.awt.Dimension(780, 472));

        javax.swing.ActionMap actionMap = org.jdesktop.application.Application.getInstance().getContext().getActionMap(verResultados.class, this);
        jButton1.setAction(actionMap.get("aceptar")); // NOI18N
        org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance().getContext().getResourceMap(verResultados.class);
        jButton1.setIcon(resourceMap.getIcon("jButton1.icon")); // NOI18N
        jButton1.setName("jButton1"); // NOI18N

        jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Resultados obtenidos", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, Interfaz.setFontSize()));
        jPanel1.setName("jPanel1"); // NOI18N

        scroll.setName("scroll"); // NOI18N

        texto.setEditable(false);
        texto.setName("texto"); // NOI18N
        scroll.setViewportView(texto);

        org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .add(scroll, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 688, Short.MAX_VALUE)
                .addContainerGap())
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .add(scroll, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 294, Short.MAX_VALUE)
                .addContainerGap())
        );

        org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
                .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
                    .add(layout.createSequentialGroup()
                        .addContainerGap()
                        .add(jPanel1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .add(jButton1))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
                .addContainerGap()
                .add(jPanel1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
                .add(jButton1)
                .addContainerGap())
        );
    }// </editor-fold>//GEN-END:initComponents

    @Action
    public void aceptar() {
        app.volver(_anterior);
    }


    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton jButton1;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JScrollPane scroll;
    private javax.swing.JEditorPane texto;
    // End of variables declaration//GEN-END:variables

}
